package com.tedu.day02.test;

import javax.swing.*;

/**
 *
 普通类    抽象类   接口类
 【关系】     【特点】
 类与类           继承         只能单继承，可多层继承
 类与抽象类        继承         可以单继承，不可以多继承
 抽象类与抽象类     继承         只能单继承，可多层继承
 类与接口         实现          可以单继承，也可以多实现
                              并且继承同时实现多个接口
 接口与接口        继承          可以单继承，可以多继承
 */
/*作业一:抽象类与接口区别和关系？简答*/
/*
区别：一个类只能继承一个抽象类，而一个类可以实现多个接口
     接口可以多继承，抽象类只能单继承
     接口不能有构造方法，但抽象类可以
     接口类不能有字段，抽象类可以
     接口类不能有普通成员变量，抽象类可以
     接口中所有方法都要是抽象的，抽象类可以包含非抽象的普通方法
     抽象类可以有静态方法，但接口中不能有
     抽象类的抽象方法的访问类型可以是public protected和默认类型，但接口中只能是public
     抽象类可以有静态方法，但接口不能有
关系：都不能实例化 、都需要子类实现父类的方法
 */


//5.接口与接口：    继承  可以单继承，可以多继承
interface Loo{}   interface Foo{}
interface Voo extends Loo,Foo{}


//4.类与接口: 实现  ---可以单继承，也可以多实现
  //  interface Loo{}   interface Foo{}
    //class Joo{}
//class Voo extends Joo implements Loo,Foo{}


//3.抽象类与抽象类：继承-只能单继承，可多层继承
    //abstract class Loo{}
//abstract class Voo extends Loo {}
 //abstract class Uoo extends Voo{}


//2.类与抽象类：继承
   // abstract class Uoo{}    abstract class Voo{}
//class Loo extends Uoo,voo{}


//1.类与类：继承---单继承,可以多层继承
 //    class Uoo{}
//class Loo extends Uoo{}
//class Voo extends Loo{}
public class 关系 {
}
